Compute nodes are typically equipped with a network adapter for accessing a communication network. The network adapter may communicate multiple communication links that belong to a single logical link. For example, IEEE standard entitled “802.1AX-2014—IEEE Standard for Local and metropolitan area networks—Link Aggregation,” Dec. 24, 2014, which is incorporated herein by reference, specifies MAC-independent link aggregation capability and provides general information relevant to specific MAC types. Link aggregation allows parallel full-duplex point-to-point links to be used as if they were a single link and also supports the use of multiple links as a resilient load sharing interconnect between multiple nodes in two separately administered networks.
As another example, U.S. Pat. No. 8,856,340, whose disclosure is incorporated herein by reference, describes mechanisms for providing a network adapter and functionality for performing link aggregation within a network adapter. With these mechanisms, a network adapter includes a plurality of physical network ports for coupling to one or more switches of a data network. A link aggregation module within the network adapter is coupled to the plurality of the physical network ports. The link aggregation module comprises logic for aggregating links associated with the plurality of the physical network ports into a single virtual link.
Some network adapters virtualize physical queues of the network adapters. For example, U.S. Pat. No. 7,095,750, whose disclosure is incorporated herein by reference, describes an apparatus and a method for virtualizing a queue pair space to minimize time-wait impacts. Virtual queue pairs are allocated from a virtual queue pair pool of a node to connections between the node and other nodes. The connection is established between a physical queue pair of the node and physical queue pairs of other nodes. From the viewpoint of the other nodes, they are communicating with the present node using the virtual queue pair and not the physical queue pair for the present node. By using the virtual queue pairs, the same physical queue pair may accommodate multiple connections with other nodes simultaneously. Moreover, when a connection is torn down, the virtual queue pair is placed in a time-wait state rather than the physical queue pair. As a result, the physical queue pair may continue to function while the virtual queue pair is in the time-wait state.
A Network adapter supporting multiple physical links may provide high availability communication, for example, by redirecting the traffic of a failing link to an alternative link. For example, U.S. Pat. No. 6,721,806, whose disclosure is incorporated herein by reference, describes a method, computer program product and a distributed data processing system for supporting a RDMA enabled NIC (RNIC) with switchover and switchback capabilities. When a planned or unplanned outage occurs on a primary RNIC, all outstanding connections are switched over to an alternate RNIC, and the alternate RNIC continues communication processing. Additionally, connections that were switched over can also be switched back.
U.S. Pat. No. 8,627,136, whose disclosure is incorporated herein by reference, describes a novel RDMA connection failover technique that minimizes disruption to upper subsystem modules (executed on a computer node), which create requests for data transfer. A new failover virtual layer performs failover of an RDMA connection in error so that the upper subsystem that created a request does not have knowledge of an error (which is recoverable in software and hardware), or of a failure on the RDMA connection due to the error. Since the upper subsystem does not have knowledge of a failure on the RDMA connection or of a performed failover of the RDMA connection, the upper subsystem continues providing requests to the failover virtual layer without interruption, thereby minimizing downtime of the data transfer activity.